package com.example.academic_affairs_system.model.vo.clazz;

import com.fasterxml.jackson.annotation.JsonInclude;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

/**
 * 班级信息视图对象
 *
 * @author hjx
 * @since 2023/02/04 11:24 AM
 */
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@ApiModel("班级信息视图对象")
@JsonInclude(JsonInclude.Include.NON_NULL)
public class ClassInfoVO {
  @ApiModelProperty(value = "班级 id")
  Long classId;

  @ApiModelProperty(value = "班级编号")
  Long classCode;

  @ApiModelProperty(value = "班级名称")
  String name;

  @ApiModelProperty(value = "班级介绍")
  String desc;

  @ApiModelProperty(value = "班级性质")
  String type;

  @ApiModelProperty(value = "课程表")
  String timetable;

  @ApiModelProperty(value = "男生数量")
  Long boyNum;

  @ApiModelProperty(value = "女生数量")
  Long girlNum;

  @ApiModelProperty(value = "班级人数")
  Long size;

  @ApiModelProperty(value = "平均分")
  String aveSource;

  @ApiModelProperty(value = "是否为负责人", notes = "一般都是负责人，该属性主要用于业务扩展")
  Boolean isDirectors;
}
